package com.ctshk.rpc.custom.req.trip;


import com.ctshk.rpc.custom.req.ContactReq;
import com.ctshk.rpc.custom.req.CustomerTypeReq;
import com.ctshk.rpc.custom.req.QuotationTouristTypeReq;
import com.ctshk.rpc.custom.req.quotation.FreeQuoteReqPackageReq;
import com.ctshk.rpc.custom.req.quotation.TripQuoteReq;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;

/**
 * <p>
 * 定制包团下单req
 * </p>
 *
 * @author 叶冠峰
 * @since 2021-02-04
 */
@Data
@ApiModel(value="TripScheduleCreateOrderReq对象", description="定制包团下单req")
public class TripScheduleCreateOrderReq implements Serializable {

    @NotNull(message = "团期id不能为空")
    @ApiModelProperty(value = "团期id",required = true)
    private Long scheduleId;
    @NotNull(message = "客户类型不能为空")
    @ApiModelProperty(value = "客户类型",required = true)
    private CustomerTypeReq customerTypeReq;
    @NotNull(message = "联络人信息不能为空")
    @ApiModelProperty(value = "联络人",required = true)
    private ContactReq contactReq;
    @NotNull(message = "请选择联络人性别")
    @ApiModelProperty(value = "联络人性别)",required = true)
    private Integer contactGender;
    @NotNull(message = "请输入联络人联系方式")
    @ApiModelProperty(value = "联络人联系方式(英文逗号隔开)",required = true)
    private String contactTelephones;
    @ApiModelProperty(value = "联系邮箱")
    private String contactEmail;
    @ApiModelProperty(value = "内部备注")
    private String internalRemark;
    @NotNull(message = "请选择报价类型")
    @ApiModelProperty(value = "报价类型（1 自由报价,2 行程报价）",required = true)
    private Integer schedulePriceType;
    @ApiModelProperty(value = "旅客人数数组")
    private List<QuotationTouristTypeReq> touristTypes;
    @ApiModelProperty(value = "自由报价套餐数组")
    private List<FreeQuoteReqPackageReq> reqPackages;
    @ApiModelProperty(value = "行程报价套餐数组")
    private List<TripQuoteReq> tripQuoteReqs;
}
